package metier;
/**
 * Classe de test unitaire sur la classe Collaborateur.
 * @author mmeunier
 *
 */
import metier.Collaborateur;
import junit.framework.*;
public class CollaborateurTest extends TestCase {

	/**
	 * Instance le collaborateur 1 de nom Ancarani et prenom John.
	 * Teste les methode getMatricule, getNom et getPrenom.
	 */
	public void testGet() {
		Collaborateur unCollaborateur = new Collaborateur(1,"Ancarani","John");
		assertEquals(unCollaborateur.getMatricule(),1);
		assertEquals(unCollaborateur.getNom(),"Ancarani");
		assertEquals(unCollaborateur.getPrenom(),"John");				
	}
	
	/**
	 * Instancie le collaborateur 1 de nom Ancarani et prenom John.
	 * Teste la methode setNom en rempla�ant le nom par Meunier.
	 */
	public void testSetNom() {
		Collaborateur unCollaborateur = new Collaborateur(1,"Ancarani","John");
		unCollaborateur.setNom("Meunier");
		assertEquals(unCollaborateur.getNom(),"Meunier");
	}
	
	public void testSetPrenom() {
		Collaborateur unCollaborateur = new Collaborateur(1,"Ancarani","John");
		unCollaborateur.setPrenom("Maxime");
		assertEquals(unCollaborateur.getPrenom(),"Maxime");
	}
	
	public void testToString(){
		Collaborateur unCollaborateur = new Collaborateur(1,"Ancarani","John");
		assertEquals(unCollaborateur.toString(),"1 Ancarani John");
	}
	
	public void testToStringDescriptif(){
		
		Collaborateur unCollaborateur = new Collaborateur(1,"Ancarani","John");
		System.out.println(unCollaborateur.toStringDescriptif());
		assertEquals(unCollaborateur.toString(),"matricule :1\nnom : Ancarani\nprénom : John");
	}
	
	public void testEquals(){
		Collaborateur unCollaborateur = new Collaborateur(1,"Ancarani","John");
		Collaborateur unCollaborateur2 = new Collaborateur(1,"Ancarani","John");
		assertTrue(unCollaborateur.Equals(unCollaborateur2));
		Collaborateur unCollaborateur3 = new Collaborateur(2,"Meunier","Maxime");
		assertFalse(unCollaborateur.Equals(unCollaborateur3));
		
	}
	
}
